From 8bd1d13b18ef4124cf7ecf232f7c03789bc10da5 Mon Sep 17 00:00:00 2001 From: robertlipe Date: Wed, 22 Aug 2012 03:02:12 +0000 Subject: [PATCH] Tweak EXIF reader to allow reads below sea level. --- gpsbabel/exif.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/gpsbabel/exif.c b/gpsbabel/exif.c index 2876d4c4d..ae9640563 100644 --- a/gpsbabel/exif.c +++ b/gpsbabel/exif.c @@ -779,10 +779,21 @@ exif_waypt_from_exif_app(exif_app_t* app) } if (alt != unknown_alt) { - if (alt_ref != 0) { + double sign; + switch (alt_ref != 0) { + case 0: + sign = 1.0; + break; + + case 1: + sign = -1.0; + break; + + default: warning(MYNAME ": Invalid GPSAltitudeRef (%d)! Using 0 (= Sea level).\n", alt_ref); + sign = 1.0; } - wpt->altitude = alt; + wpt->altitude = sign * alt; #ifdef EXIF_DBG printf(MYNAME "-GPSAltitude = %12.7f m\n", wpt->altitude); #endif -- 2.30.2